XP-style System Metaphor

Develop a system metaphor for your project, and put it into the deliverables/milestones section of your project website.

See the XP/Agile PPT for examples of system metaphors.

This is not a lengthy piece of text... it is a statement or two or three, a short paragraph describing the system you are building in common terms, in terms of something most will understand or have experience with. It might be a process, or a physical system (not necessarily software) that appears in a wider society context.


What is the system metaphor?

The system metaphor is a shared "short story" or analogy that the whole team (developers, customers, stakeholders) uses to understand how the system works.

It’s like a high-level organizing concept that guides naming, architecture, and communication.

It is meant to be simple, concrete, and familiar, so that even non-technical stakeholders can relate.


Why XP has (had) it

Beck used it, and originally said it provided :


Less common today

In practice, many teams struggled to come up with a useful metaphor.

Sometimes the metaphor was forced or confusing.

Over time, XP practitioners leaned more on ubiquitous language (from Domain-Driven Design) or lightweight architecture sketches instead.

Still, the idea lives on: use clear, shared language and mental models to keep communication simple.